load("@rules_proto//proto:defs.bzl", "proto_library")
load("@io_grpc_grpc_java//:java_grpc_library.bzl", "java_grpc_library")
load("//:kt_jvm_grpc.bzl", "kt_jvm_grpc_library", "kt_jvm_proto_library")

licenses(["notice"])

package(default_visibility = ["//examples:__subpackages__"])

proto_library(
    name = "animals_proto",
    srcs = [
        "dog.proto",
        "pig.proto",
        "sheep.proto",
    ],
)

java_proto_library(
    name = "animals_java_proto",
    deps = [":animals_proto"],
)

java_lite_proto_library(
    name = "animals_java_proto_lite",
    deps = [":animals_proto"],
)

kt_jvm_proto_library(
    name = "animals_kt_proto",
    deps = [":animals_proto"],
)

kt_jvm_grpc_library(
    name = "animals_kt_grpc",
    srcs = [":animals_proto"],
    deps = [":animals_java_proto"],
)

kt_jvm_grpc_library(
    name = "animals_kt_grpc_lite",
    srcs = [":animals_proto"],
    flavor = "lite",
    deps = [":animals_java_proto_lite"],
)
